Concurrent Search Tree by Lazy Splaying

نویسندگان

  • Yehuda Afek
  • Boris Korenfeld
  • Adam Morrison
چکیده

In many search tree (maps) applications the distribution of items accesses is non-uniform, with some popular items accessed more frequently than others. Traditional self-adjusting tree algorithms adapt to the access pattern, but are not suitable for a concurrent setting since they constantly move items to the tree’s root, turning the root into a sequential hot spot. Here we present lazy splaying, a new search tree algorithm that moves frequently accessed items close to the root without making the root a bottleneck. Lazy splaying is fast and highly scalable making at most one local adjustment to the tree on each access. It can be combined with other sequential or concurrent search tree algorithms. In the experimental evaluation we integrated lazy splaying into Bronson et. al.’s optimistic search tree implementation to get a concurrent highly scalable search tree, and show that it significantly improves performance on realistic non-uniform access patterns, while only slightly degrading performance for uniform accesses.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Trade-off Analysis of Crosscutting Functionalities using Lazy Counting-based Splay Tree in Aspect Oriented Programming

Aspect Oriented Programming (AOP) provides new modularization of software systems through encapsulation of crosscutting functionalities, providing a clear isolation and utilization thereof. The trade-offs are typically a consequence of technical contradictions in requirements. We employ a data structure called a lazy counting based splay tree to analyze the trade-off between the conflicting qua...

متن کامل

A Contention-Friendly Binary Search Tree

This paper proposes a new lock-based concurrent binary tree using a methodology for writing concurrent data structures. This methodology limits the high contention induced by today’s multicore environments to come up with efficient alternatives to the most widely used search structures. Data structures are generally constrained to guarantee a big-oh step complexity even in the presence of concu...

متن کامل

An Explanation of Splaying

Just as in bottom-up splaying, the idea is to follow each access by a restructuring of the search tree along the path from the accessed item to the root of the tree. The restructuring is done in a local fashion, i.e., without using information about the global structure of the tree. We call the restructuring algorithm the super̈ isor; it operates with a set of rules called the ruleset. Each unit...

متن کامل

Self-adjusting trees in practice for large text collections

Splay and randomized search trees (RSTs) are self-balancing binary tree structures with little or no space overhead compared to a standard binary search tree (BST). Both trees are intended for use in applications where node accesses are skewed, for example in gathering the distinct words in a large text collection for index construction. We investigate the efficiency of these trees for such voc...

متن کامل

A Fast Contention-Friendly Binary Search Tree

This paper presents a fast concurrent binary search tree algorithm. To achieve high performance under contention, the algorithm divides update operations within an eager abstract access that returns rapidly for efficiency reason and a lazy structural adaptation that may be postponed to diminish contention. To achieve high performance under read-only workloads, it features a rebalancing mechanis...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011